Primero, limpiamos el entorno de trabajo para asegurarnos de que no haya datos ni objetos de sesiones anteriores que puedan interferir con nuestro análisis.
Para realizar nuestro análisis, necesitaremos varias librerías que facilitan la manipulación de datos, la creación de gráficos y la realización de pruebas estadísticas.
# Cargar librerías necesarias
library(ggplot2) # Para gráficos 2D
library(plotly) # Para gráficos 3D
library(readr) # Para leer archivos CSV
library(stats) # Para realizar PCA
library(factoextra) # Para eigenvalue y visualización de PCA
library(dplyr) # Para manipulación de datos
library(nortest) # Para pruebas de normalidad
library(gtsummary) # Para tablas resumenA continuación, cargamos los datos desde un archivo CSV y realizamos una verificación inicial para detectar valores NA.
# Cargar la base de datos
datos <- read.csv("mubio02_act3_alimentos_nutrientes_4900.csv")
# Ver los datos cargados
View(datos)
# Verificar si hay valores NA
any(is.na(datos)) # Retorna TRUE si hay valores NA## [1] TRUE
Eliminamos las filas con valores NA para asegurarnos de que nuestro análisis se realice sobre datos completos.
# Eliminar filas con valores NA
datos_limpios <- datos[complete.cases(datos),]
# Verificar nuevamente si hay valores NA
any(is.na(datos_limpios)) # Debería retornar FALSE## [1] FALSE
Para cada variable en nuestros datos limpios, realizaremos una prueba de normalidad y registraremos los p-values.
# Cromprobar la normalidad de los datos
pvalor <- matrix(NA, nrow=ncol(datos_limpios), ncol=1) # Crear una matriz para registrar los p values# Utilizar un bucle para calcular la normalidad en cada columna
for (i in 2:ncol(datos_limpios)) {
resultado_anderson <- ad.test(datos_limpios[[i]]) #Aplicar el test de Anderson-Darling a cada columna
pvalor[i, ] <- resultado_anderson$p.value #Guardar el valor de p-value en la matriz
}## [,1]
## [1,] NA
## [2,] 1.834905e-19
## [3,] 3.700000e-24
## [4,] 3.700000e-24
## [5,] 3.700000e-24
## [6,] 3.700000e-24
Una vez comprobada la normalidad, procedemos a normalizar los datos numéricos para prepararlos para análisis posteriores.